<?xml version="1.0" encoding="utf-8"?>
<Content xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:blueonionsoftware-com:bloget:runtime:data">
  <text>This macro stops the build on the first error encountered - so you don't wear out you finger scrolling thru the output log trying to find the problem.

To install:

In VS - select Tools/Macros/Macro IDE

In the project explorer, under MyMacros, there shoud be a EnvironmentEvents module - double click it to open
(If you don't have this file  - add it, it should look as follows.)

Option Strict Off
Option Explicit Off
Imports EnvDTE
Imports System.Diagnostics

Public Module EnvironmentEvents

#Region "Automatically generated code, do not modify"
'Automatically generated code, do not modify
'Event Sources Begin
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents DTEEvents As EnvDTE.DTEEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents DocumentEvents As EnvDTE.DocumentEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents WindowEvents As EnvDTE.WindowEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents TaskListEvents As EnvDTE.TaskListEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents FindEvents As EnvDTE.FindEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents OutputWindowEvents As EnvDTE.OutputWindowEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents SelectionEvents As EnvDTE.SelectionEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents BuildEvents As EnvDTE.BuildEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents SolutionEvents As EnvDTE.SolutionEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents SolutionItemsEvents As EnvDTE.ProjectItemsEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents MiscFilesEvents As EnvDTE.ProjectItemsEvents
	&lt;system .ContextStaticAttribute()&gt; Public WithEvents DebuggerEvents As EnvDTE.DebuggerEvents
'Event Sources End
'End of automatically generated code
#End Region

End Module


Cut and pase the following code before the line "End Module"

That's it! (I wish I could take credit for this one, but I found it on some web site and enhanced it slightly.)

Private Sub BuildEvents_OnBuildProjConfigDone( _
        ByVal Project As String, _
        ByVal ProjectConfig As String, _
        ByVal Platform As String, _
        ByVal SolutionConfig As String, _
        ByVal Success As Boolean) _
        Handles BuildEvents.OnBuildProjConfigDone

        If Success = False Then
            DTE.ExecuteCommand("Build.Cancel", "")
            Dim win As Window = DTE.Windows.Item( _
               EnvDTE.Constants.vsWindowKindOutput)
            Dim OW As OutputWindow = CType( _
               win.Object, OutputWindow)
            OW.OutputWindowPanes.Item( _
               "Build").OutputString( _
               "ERROR IN " &amp; Project &amp; _
               " Build Stopped" + _
               System.Environment.NewLine)
        End If
    End Sub
&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;&lt;/system&gt;</text>
  <last_update>2007-10-04T00:52:18.8050806Z</last_update>
  <source_title />
  <source_link />
  <comments />
  <references />
  <attachments />
</Content>